<?php
session_start();
include('include/config.php');
include('include/fonctions.php');
$messageErrMail = 'Page : professeur.php<br />';
actualiser_session();

$msgErr = $civ = $nom = $prenom = $password = $mail = $dateSql = $optin = $nomEcole = $villeEcole = $note = $trimestre = $precision = $absence = '';
$connection = connexionBdd();


//on vient ici pour récupérer les élement d'un eleve en vu d'une modification
$req = $connection->prepare('SELECT `prof_nom`,
    `prof_prenom`,
    `prof_mail`,
    `prof_civ`,
    `prof_mdp`,
    `prof_naissance`,
    `prof_optin`,
    `nom_ecole`,
    `ville_ecole`,
    `prof_bulletin`,
    `prof_period`,
    `prof_virgule`,
    `prof_abs`,
    `prof_soin`,
    `id_ecole`
    FROM `prof` NATURAL JOIN `ecole` WHERE `prof_id` =:id LIMIT 0 , 1');
$req->bindParam(':id', $_SESSION['prof_id'], PDO::PARAM_INT);
$req->execute();
$donnees = $req->fetch(PDO::FETCH_ASSOC);
$req->closeCursor();

$civ = $donnees['prof_civ'];
$nom = $donnees['prof_nom'];
$prenom = $donnees['prof_prenom'];
$mail = $donnees['prof_mail'];
$password = $donnees['prof_mdp'];
$dateSql = $donnees['prof_naissance'];
$optin = $donnees['prof_optin'];
$nomEcole = $donnees['nom_ecole'];
$villeEcole = $donnees['ville_ecole'];
$note = $donnees['prof_bulletin'];
$trimestre = $donnees['prof_period'];
$precision = $donnees['prof_virgule'];
$absence = $donnees['prof_abs'];
$soin = $donnees['prof_soin'];
$idEcole = $donnees['id_ecole'];

//on vérifie que l'on à envoyé le forumaire
if (!empty($_POST['envoyer'])) {
    $err = 0;

//Civilité
    if (isset($_POST['civ'])) {
        $civ = secure($_POST['civ']);
    } else {
        $msgErrCiv = '<div class="warning">Merci de renseigner votre civilité</div><div class="clear"></div>';
        $err++;
    }

//Nom
    if (isset($_POST['nom'])) {
        $nom = secure($_POST['nom']);
        $nom_result = checkVarchar($nom, 2, 150);
        if ($nom_result == 'tooshort') {
            $msgErrNom = '<div class="warning">Le nom est trop court, minimum 2 caractères.</div><div class="clear"></div>';
            $err++;
        } else if ($nom_result == 'toolong') {
            $msgErrNom = '<div class="warning">Le nom est trop long, maximum 150 caractères.</div><div class="clear"></div>';
            $err++;
        } else if ($nom_result == 'empty') {
            $msgErrNom = '<div class="warning">Merci de renseigner votre nom de famille.</div><div class="clear"></div>';
            $err++;
        }
    } else {
        $msgErrNom = '<div class="warning">Merci de renseigner votre nom de famille.</div><div class="clear"></div>';
        $err++;
    }

//Prénom
    if (isset($_POST['prenom'])) {
        $prenom = secure($_POST['prenom']);
        $prenom_result = checkVarchar($prenom, 2, 150);
        if ($prenom_result == 'tooshort') {
            $msgErrPrenom = '<div class="warning">Votre prénom est trop court, minimum 2 caractères.</div><div class="clear"></div>';
            $err++;
        } else if ($prenom_result == 'toolong') {
            $msgErrPrenom = '<div class="warning">Votre prénom est trop long, maximum 150 caractères.</div><div class="clear"></div>';
            $err++;
        } else if ($prenom_result == 'empty') {
            $msgErrPrenom = '<div class="warning">Merci de renseigner votre prénom.</div><div class="clear"></div>';
            $err++;
        }
    } else {
        $msgErrPrenom = '<div class="warning">Merci de renseigner votre prénom.</div><div class="clear"></div>';
        $err++;
    }

    //Password
    if ((isset($_POST['password'])) && (!empty($_POST['password']))) {
        $password = secure($_POST['password']);
        $password_result = checkmdp($password);
        if ($password_result == 'tooshort') {
            $msgErrPassword = '<div class="warning">Le nouveau password est trop court, minimum 3 caractères.</div><div class="clear"></div>';
            $err++;
        } else if ($password_result == 'toolong') {
            $msgErrPassword = '<div class="warning">Le nouveau password est trop long, maximum 40 caractères.</div><div class="clear"></div>';
            $err++;
        }
        $password = sha1($password);
    }

    //Date de naissance
    if (isset($_POST['jour']) && isset($_POST['mois']) && isset($_POST['annee'])) {
        $dateJ = secure($_POST['jour']);
        if ($dateJ < 10)
            $dateJ = '0' . $dateJ;
        $dateM = secure($_POST['mois']);
        if ($dateM < 10)
            $dateM = '0' . $dateM;
        $dateA = secure($_POST['annee']);
        $date = $dateJ . '-' . $dateM . '-' . $dateA;
        $dateSql = $dateA . '-' . $dateM . '-' . $dateJ;
        $date_result = birthdate($date);
        if ($date_result == 'format') {
            $msgErrDate = '<div class="warning">Votre date de naissance n\'est pas au bon format jj-mm-aaaa.</div>';
            $err++;
        }
    }

    //Optin
    if (isset($_POST['optin'])) {
        $optin = secure($_POST['optin']);
    } else {
        $msgErrOptin = '<div class="warning">Merci nous dire si vous acceptez de recevoir des emails de nos partenaires.</div><div class="clear"></div>';
        $err++;
    }

    //Nom Ecole
    if (isset($_POST['ecole'])) {
        $nomEcole = secure($_POST['ecole']);
        $nomEcole_result = checkVarchar($nomEcole, 2, 150);
        if ($nomEcole_result == 'tooshort') {
            $msgErrNomEcole = '<div class="warning">Le nom est trop court, minimum 2 caractères.</div><div class="clear"></div>';
            $err++;
        } else if ($nomEcole_result == 'toolong') {
            $msgErrNomEcole = '<div class="warning">Le nom est trop long, maximum 150 caractères.</div><div class="clear"></div>';
            $err++;
        } else if ($nomEcole_result == 'empty') {
            $msgErrNomEcole = '<div class="warning">Merci de renseigner le nom de votre école.</div><div class="clear"></div>';
            $err++;
        }
    } else {
        $msgErrNomEcole = '<div class="warning">Merci de renseigner le nom de votre école.</div><div class="clear"></div>';
        $err++;
    }

    //Ville Ecole
    if (isset($_POST['ville'])) {
        $villeEcole = secure($_POST['ville']);
        $villeEcole_result = checkVarchar($villeEcole, 2, 150);
        if ($villeEcole_result == 'tooshort') {
            $msgErrVilleEcole = '<div class="warning">Le nom est trop court, minimum 2 caractères.</div><div class="clear"></div>';
            $err++;
        } else if ($villeEcole_result == 'toolong') {
            $msgErrVilleEcole = '<div class="warning">Le nom est trop long, maximum 150 caractères.</div><div class="clear"></div>';
            $err++;
        } else if ($villeEcole_result == 'empty') {
            $msgErrVilleEcole = '<div class="warning">Merci de renseigner la ville de votre école.</div><div class="clear"></div>';
            $err++;
        }
    } else {
        $msgErrVilleEcole = '<div class="warning">Merci de renseigner la ville de votre école.</div><div class="clear"></div>';
        $err++;
    }

    //Note
    if (isset($_POST['note'])) {
        $note = secure($_POST['note']);
    } else {
        $msgErrNote = '<div class="warning">Merci nous choisir entre note ou compétence.</div><div class="clear"></div>';
        $err++;
    }

    //Trimestre
    if (isset($_POST['trimestre'])) {
        $trimestre = secure($_POST['trimestre']);
    } else {
        $msgErrTrimestre = '<div class="warning">Merci nous dire de combien de période se compose votre année.</div><div class="clear"></div>';
        $err++;
    }

    //Précision
    if (isset($_POST['precision'])) {
        $precision = secure($_POST['precision']);
    } else {
        $msgErrPrecision = '<div class="warning">Merci nous dire combien de chiffres après la virgule lors d\'arrondis.</div><div class="clear"></div>';
        $err++;
    }

    //Absence
    if (isset($_POST['absence'])) {
        $absence = secure($_POST['absence']);
    } else {
        $msgErrAbsence = '<div class="warning">Merci nous dire si vous souhaitez voir apparaitre cette ligne sur le bulletin.</div><div class="clear"></div>';
        $err++;
    }

    //Soin
    if (isset($_POST['soin'])) {
        $soin = secure($_POST['soin']);
    } else {
        $msgErrSoin = '<div class="warning">Merci nous dire si vous souhaitez voir apparaitre cette ligne sur le bulletin.</div><div class="clear"></div>';
        $err++;
    }

    //tout est ok on continue l'inscription
    if ($err < 1) {
        $connection = connexionBdd();

        $modif = $connection->prepare('UPDATE `prof` SET
                  `prof_nom` =  :nom,
                    `prof_prenom` =  :prenom,
                    `prof_civ` =  :civ,
                    `prof_mdp` = :password,
                    `prof_naissance` =  :birthday,
                    `prof_optin` =  :optin,
                    `prof_bulletin` =  :note,
                    `prof_period` =  :trimestre,
                    `prof_virgule` =  :precision,
                    `prof_abs` =  :absence,
                    `prof_soin` =  :soin
                WHERE  `prof_id` =:id');
        $modif->bindParam(':id', $_SESSION['prof_id'], PDO::PARAM_INT);
        $modif->bindParam(':nom', $nom, PDO::PARAM_STR);
        $modif->bindParam(':prenom', $prenom, PDO::PARAM_STR);
        $modif->bindParam(':password', $password, PDO::PARAM_STR);
        $modif->bindParam(':civ', $civ, PDO::PARAM_INT);
        $modif->bindParam(':birthday', $dateSql);
        $modif->bindParam(':optin', $optin, PDO::PARAM_INT);
        $modif->bindParam(':note', $note, PDO::PARAM_INT);
        $modif->bindParam(':trimestre', $trimestre, PDO::PARAM_INT);
        $modif->bindParam(':precision', $precision, PDO::PARAM_INT);
        $modif->bindParam(':absence', $absence, PDO::PARAM_INT);
        $modif->bindParam(':soin', $soin, PDO::PARAM_INT);

        $modifEcole = $connection->prepare('UPDATE `ecole` SET
                                            `nom_ecole` =  :nomEcole,
                                            `ville_ecole` =  :ville
                                            WHERE  `id_ecole` =:id');
        $modifEcole->bindParam(':id', $idEcole, PDO::PARAM_INT);
        $modifEcole->bindParam(':nomEcole', $nomEcole, PDO::PARAM_STR);
        $modifEcole->bindParam(':ville', $villeEcole, PDO::PARAM_STR);
// On exécute
        try {
            $modif->execute();
            $modif->closeCursor();
            //mise à jour de la session password en cas de changement
            if ($_SESSION['prof_mdp']!=$password)
                $_SESSION['prof_mdp']=$password;
            $modifEcole->execute();
            $modifEcole->closeCursor();
            $msgErr = '<div class="success">Les modifications sont effectives.</div>';
        } catch (Exception $e) {
            $msgErrBdd = '<div class="error">Une erreur technique est venue perturbée votre inscription. Notre équipe technique vient d\en être informée. Merci de renouveler votre opération ultérieurement.</div>';
            $err++;
            $messageErrMail .=$e->getMessage();
            error_log($messageErrMail, 1, $mailAdmin, $enteteErrLog);
        }
    }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <title>Gestion de mes informations et de mes paramètres.</title>
        <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
        <meta name="description" content="Permet la modification de vos informations personnelles, mais aussi du paramétrage de votre compte." />
        <meta name="keywords" content="parametre, compte, professeur" />
        <meta name="author" content="Wicenty web" />
        <link rel="icon" href="images/favicon.ico" type="image/x-icon" />
        <link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon" />
        <link rel="stylesheet" href="css/style.css" />
        <link rel="stylesheet" href="css/menu.css" />
        <link rel="stylesheet" href="css/form.css" />
        <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
        <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
        <script>
            $(function() {

                $("#ville").autocomplete(
                        {
                            source: 'include/ville.php',
                            minLength: 2
                        })

            });
        </script>
    </head>
    <body>
        <!--==============================header=================================-->
        <?php
        require_once('include/menu.php');
        ?>

        <!--==============================content================================-->
        <div class="bg1">
            <div class="bg">
                <section id="content">
                    <div class="container_12">
                        <article class="grid_12">
                            <h1>Gérer mon compte</h1>
                            <p>Vous pouvez ici modifier vos <strong>informations personnelles</strong> relatives à l'affichage du bulletin, mais également les paramètres de votre compte.</p>
                            <p>La page se compose de <strong>3 parties</strong> : vos informations personnelles, les informations de <strong>votre école</strong> et enfin les <strong>paramètres du bulletin</strong>. Sur votre <strong>droite</strong> vous retrouverez une <strong>aide didactitielle</strong> pour vous guider.</p>
                        </article>
                        <article class="grid_12">
                            <div class="border-bot"></div>
                        </article>
                        <article class="grid_7">
                            <h3>Mes informations</h3>
                            <fieldset>
                                <legend class="labelFieldset">Mes informations</legend>
                                <?php
                                echo $msgErr;
                                if ((!isset($err)) || ( $err > 0)) {
                                    if (isset($msgErrCiv))
                                        echo $msgErrCiv;
                                    if (isset($msgErrNom))
                                        echo $msgErrNom;
                                    if (isset($msgErrPrenom))
                                        echo $msgErrPrenom;
                                    if (isset($msgErrPassword))
                                        echo $msgErrPassword;
                                    if (isset($msgErrDate))
                                        echo $msgErrDate;
                                    if (isset($msgErrBdd))
                                        echo $msgErrBdd;
                                    if (isset($msgErrOptin))
                                        echo $msgErrOptin;
                                    if (isset($msgErrNomEcole))
                                        echo $msgErrNomEcole;
                                    if (isset($msgErrVilleEcole))
                                        echo $msgErrVilleEcole;
                                    if (isset($msgErrNote))
                                        echo $msgErrNote;
                                    if (isset($msgErrTrimestre))
                                        echo $msgErrTrimestre;
                                    if (isset($msgErrPrecision))
                                        echo $msgErrPrecision;
                                    if (isset($msgErrAbsence))
                                        echo $msgErrAbsence;
                                    if (isset($msgErrSoin))
                                        echo $msgErrSoin;
                                }
                                ?>
                                <form name="prof" id="stylized" method="post" action="professeur.php">
                                    <label for="civ1" class="label4">Civilité :</label>
                                    <div class="block2">
                                        <label for="civ1">M.</label> <input type="radio" name="civ" id="civ1" value="M" class="radio" <?php if ($civ == 'M') echo 'checked'; ?>/>
                                        <label for="civ2">Mme</label> <input type="radio" name="civ" id="civ2" value="Mme" class="radio" <?php if ($civ == 'Mme') echo 'checked'; ?>/>
                                        <label for="civ3">Mlle</label> <input type="radio" name="civ" id="civ3" value="Mlle" class="radio" <?php if ($civ == 'Mlle') echo 'checked'; ?>/>
                                    </div>
                                    <div class="clear"></div>

                                    <label for="nom" class="label4">Nom :</label> <input type="text" name="nom" id="nom" value="<?php echo $nom; ?>" placeholder="Votre nom de famille" class="input"/><div class="clear"></div>
                                    <label for="prenom" class="label4">Prénom :</label> <input type="text" name="prenom" id="prenom" value="<?php echo $prenom; ?>" placeholder="Votre prénom" class="input"/><div class="clear"></div>
                                    <label for="email" class="label4">Email :</label> <div class="input"><?php echo $mail; ?></div><div class="clear"></div>
                                    <label for="password" class="label4">Password :</label> <input type="password" name="password" id="password" placeholder="Nouveau password" class="input"/><div class="clear"></div>
                                    <label for="dateNaissance" class="label4">Date de naissance :</label>
                                    <div class="block2">
                                        <select name="jour" class="select2">
                                            <?php
                                            if (empty($dateSql))
                                                $dateSql = '0-0-0';
                                            $date = explode('-', $dateSql);
                                            for ($i = 1; $i <= 31; $i++) {
                                                echo '<option value="', $i, '"';
                                                if ($date[2] == $i)
                                                    echo ' selected';
                                                echo '>', $i, '</option>';
                                            }
                                            ?>
                                        </select>
                                        <select name="mois" class="select2">
                                            <?php
                                            for ($i = 1; $i <= 12; $i++) {
                                                echo '<option value="', $i, '"';
                                                if ($date[1] == $i)
                                                    echo ' selected';
                                                echo '>', $i, '</option>';
                                            }
                                            ?>
                                        </select>
                                        <select name="annee" class="select2">
                                            <?php
                                            for ($i = date('Y') - 65; $i <= date('Y') - 18; $i++) {
                                                echo '<option value="', $i, '"';
                                                if ($date[0] == $i)
                                                    echo ' selected';
                                                echo '>', $i, '</option>';
                                            }
                                            ?>
                                        </select>
                                    </div><div class="clear"></div>

                                    <label for="optinO" class="label4">Acceptez-vous les <br />e-mails de nos partenaires :</label>
                                    <div class="block">
                                        <label for="optinO">Oui</label> <input type="radio" name="optin" id="optinO" value="1" class="radio" <?php if ($optin == 1) echo 'checked'; ?>/>
                                        <label for="optinN">Non</label> <input type="radio" name="optin" id="optinN" value="0" class="radio" <?php if ($optin == 0) echo 'checked'; ?>/>
                                    </div>
                                    <div class="clear"></div>
                            </fieldset>
                            <fieldset>
                                <legend class="labelFieldset">Mon école</legend>
                                <label for="ecole" class="label4">Nom :</label> <input type="text" name="ecole" id="ecole" value="<?php echo $nomEcole; ?>" placeholder="Le nom de votre école" class="input"/><div class="clear"></div>
                                <label for="ville" class="label4">Ville :</label> <input type="text" name="ville" id="ville" value="<?php echo $villeEcole; ?>" placeholder="La ville de votre école" class="input"/><div class="clear"></div>
                            </fieldset>
                            <fieldset>
                                <legend class="labelFieldset">Mes paramètres</legend>
                                <label for="note" class="label4">Type de bulletin :</label>
                                <div class="block2">
                                    <label for="num">Numérique</label> <input type="radio" name="note" id="num" value="1" class="radio" <?php if ($note == 1) echo 'checked'; ?>/>
                                    <label for="txt">Compétence</label> <input type="radio" name="note" id="txt" value="0" class="radio" <?php if ($note == 0) echo 'checked'; ?>/>
                                </div>
                                <div class="clear"></div>

                                <label for="trimestre" class="label4">Nombre de périodes :</label>
                                <div class="block2">
                                    <label for="3">3</label> <input type="radio" name="trimestre" id="3" value="3" class="radio" <?php if ($trimestre == 3) echo 'checked'; ?>/>
                                    <label for="4">4</label> <input type="radio" name="trimestre" id="4" value="4" class="radio" <?php if ($trimestre == 4) echo 'checked'; ?>/>
                                    <label for="5">5</label> <input type="radio" name="trimestre" id="5" value="5" class="radio" <?php if ($trimestre == 5) echo 'checked'; ?>/>
                                </div>
                                <div class="clear"></div>

                                <label for="precision" class="label4">Précision après la virgule :</label>
                                <div class="block2">
                                    <label for="precision0">0</label> <input type="radio" name="precision" id="precision0" value="0" class="radio" <?php if ($precision == 0) echo 'checked'; ?>/>
                                    <label for="precision1">1</label> <input type="radio" name="precision" id="precision1" value="1" class="radio" <?php if ($precision == 1) echo 'checked'; ?>/>
                                    <label for="precision2">2</label> <input type="radio" name="precision" id="precision2" value="2" class="radio" <?php if ($precision == 2) echo 'checked'; ?>/>
                                    <label for="precision3">3</label> <input type="radio" name="precision" id="precision3" value="3" class="radio" <?php if ($precision == 3) echo 'checked'; ?>/>
                                </div>
                                <div class="clear"></div>

                                <label for="absence" class="label4">Champ "Absences" :</label>
                                <div class="block2">
                                    <label for="absOui">Oui</label> <input type="radio" name="absence" id="absOui" value="1" class="radio" <?php if ($absence == 1) echo 'checked'; ?>/>
                                    <label for="absNon">Non</label> <input type="radio" name="absence" id="absNon" value="0" class="radio" <?php if ($absence == 0) echo 'checked'; ?>/>
                                </div>
                                <div class="clear"></div>

                                <label for="soin" class="label4">Champ "Comportement/Soin" :</label>
                                <div class="block2">
                                    <label for="soinOui">Oui</label> <input type="radio" name="soin" id="soinOui" value="1" class="radio" <?php if ($soin == 1) echo 'checked'; ?>/>
                                    <label for="soinNon">Non</label> <input type="radio" name="soin" id="soinNon" value="0" class="radio" <?php if ($soin == 0) echo 'checked'; ?>/>
                                </div>
                                <div class="clear"></div>
                            </fieldset>

                            <label class="label4">&nbsp;</label><input type="submit" value="Modifier mes informations" name="envoyer" class="bouton"/>
                            </form>
                        </article>
                        <article class="grid_3 prefix_1 border1" id='eleve'>
                            <h3>Aide</h3>
                            <div class="margin-bot2">
                                <p>Voici un peu plus d'explications sur l'utilité des champs et leurs applications.
                                    <ul>
                                        <li><strong>Emails partenaires</strong><br />
                                            En acceptant vous serez succeptible de recevoir 4 ou 5 fois par mois des emails publicitaires de nos partenaires.</li>
                                        <br />
                                        <li><strong>Type de bulletin</strong><br />
                                            Numérique pour des notes avec moyenne classique. Compétence pour les bulletins avec A/NA/ECA.</li>
                                        <br />
                                        <li><strong>Nombre de période</strong><br />
                                            Déterminez si vous êtes sur 3 trimestres classiques ou sur plusieurs périodes.</li>
                                        <br />
                                        <li><strong>Précision</strong><br />
                                            Vous pouvez choisir le nombre de chiffres après la virgule concernant les arrondis des moyennes.</li>
                                        <br />
                                        <li><strong>Absences</strong><br />
                                            Permet d'ajouter un champ "Nombre d'absences" sur le bulletin que vous pourrez remplir manuellement.</li>
                                        <br />
                                        <li><strong>Comportement/Soin</strong><br />
                                            Permet d'ajouter un champ "Comportement/Soin" sur le bulletin que vous pourrez remplir manuellement.</li>
                                    </ul>
                                </p>
                            </div>
                        </article>
                    </div>
                </section>

                <!--==============================footer=================================-->
                <?php
//                echo '<pre>';
//                print_r($GLOBALS);
//                echo '</pre>';
                require_once 'include/footer.php';
                ?>
            </div>
        </div>
    </body>
</html>